package com.hanthink.system.service.pc;

import java.util.List;

import com.hanthink.common.core.domain.model.LoginUser;
import com.hanthink.system.domain.pc.EmEquip;
import com.hanthink.system.domain.pc.EmImage;
import com.hanthink.system.domain.pc.EmTaskPlan;

/**
 * 设备台账Service接口
 * 
 * @author hanthink
 * @date 2021-01-26
 */
public interface IEmEquipService {
	/**
	 * 查询设备台账
	 * 
	 * @param id 设备台账ID
	 * @return 设备台账
	 */
    EmEquip selectEmEquipById(Long id);

	/**
	 * 查询设备台账列表
	 * 
	 * @param emEquip 设备台账
	 * @return 设备台账集合
	 */
    List<EmEquip> selectEmEquipList(EmEquip emEquip);

	/**
	 * 查询设备是否存在
	 * @param emEquip 设备台账
	 * @return 设备台账集合
	 */
	int selectEmEquipExist(EmEquip emEquip);

	/**
	 * 新增设备台账
	 * 
	 * @param emEquip 设备台账
	 * @return 结果
	 */
    int insertEmEquip(EmEquip emEquip);

	/**
	 * 修改设备台账
	 * 
	 * @param emEquip 设备台账
	 * @return 结果
	 */
    int updateEmEquip(EmEquip emEquip);

	int updateEmEquipNew(EmEquip emEquip, LoginUser loginUser);

	int saveLog(EmEquip emEquip, LoginUser loginUser);

	int updateEmEquipbymachineid(String machineid,String status);

	/**
	 * 批量删除设备台账
	 * 
	 * @param ids 需要删除的设备台账ID
	 * @return 结果
	 */
    int deleteEmEquipByIds(Long[] ids);

	/**
	 * 删除设备台账信息
	 * 
	 * @param id 设备台账ID
	 * @return 结果
	 */
    int deleteEmEquipById(Long id);

	/**
	 * 导入数据
	 * 
	 * @param emEquipList     数据列表
	 * @param isUpdateSupport 是否更新支持，如果已存在，则进行更新数据
	 * @param operName        操作用户
	 * @return 结果
	 */
    String importEmEquip(List<EmEquip> emEquipList, Boolean isUpdateSupport, String operName);

	/**
	 * 导入设备图片数据
	 * 
	 * @param emEmImageList   数据列表
	 * @param isUpdateSupport 是否更新支持，如果已存在，则进行更新数据
	 * @param loginUser        操作用户
	 * @return 结果
	 */
    String importEmEquipImage(List<EmImage> emEmImageList, Boolean isUpdateSupport, LoginUser loginUser);
}
